ปรัชญาของ "ไฟล์คือความจริง"
รากฐานของ OpenClaw คือปรัชญาแบบเน้นไฟล์ Markdown. แตกต่างจากระบบที่ใช้ปัญญาประดิษฐ์แบบกล่องดำทั่วไป ซึ่ง OpenClaw พิจารณาการตั้งค่าเป็นเอกสารประกอบ ทุกแง่มุมของตัวแทน—บุคลิกภาพ ความสามารถ และกระบวนการดำเนินงาน—ถูกจัดเก็บไว้ในไฟล์ Markdown ที่อ่านได้โดยมนุษย์ ทำให้มั่นใจได้ว่า "แหล่งข้อมูลที่แท้จริง" นั้นโปร่งใส มีการควบคุมเวอร์ชัน และสามารถแก้ไขได้ง่ายทั้งโดยมนุษย์และโมเดลปัญญาประดิษฐ์
- SOUL.md: คือตัวตนหลักและแนวทางศีลธรรม
- SKILL.md: คือรายการที่กำหนดว่าตัวแทนสามารถทำอะไรได้จริง
- AGENTS.md: คือแผนผังวิศวกรรมสำหรับการประสานงานหลายตัวแทน
ชุดโครงสร้างพื้นฐานหลัก
เพื่อเปลี่ยนจากไฟล์คงที่ไปเป็นตัวแทนที่มีชีวิต โอเพนคลอว์ใช้สถาปัตยกรรมเบื้องหลังที่แข็งแรง ออกแบบมาเพื่อความมั่นคงและความยืดหยุ่น:
- เอเจนต์เรนท์ไทม์: ห้องเครื่องที่จัดการกับระบบลำดับงาน. ช่วยให้การทำงานแบบไม่พร้อมกันดำเนินไปโดยไม่ก่อให้เกิดความเสียหายของสถานะ โดยรักษาการแยกเซสชัน ตลอดการโต้ตอบทุกครั้ง
- เกตเวย์: หน่วยงานควบคุมที่จัดการตัวตนเครือข่ายและการจัดเส้นทางโมเดล มีหน้าที่เป็นเกราะป้องกันความปลอดภัย ลดความเสี่ยงเช่นการดำเนินการโค้ดจากระยะไกล (RCE) บนโปรโตคอล WebSocket
- ชั้นเครื่องมือ: คืออินเทอร์เฟซแบบโมดูลาร์ ที่ตัวแทนเชื่อมต่อกับฟังก์ชันภายนอก โปรแกรม API และสคริปต์ท้องถิ่น ที่กำหนดไว้ในไฟล์ทักษะ
- เครื่องมือที่ไม่พึ่งพาโมเดลเฉพาะ: ระบบไม่ถูกจำกัดให้ใช้ผู้ให้บริการเดียว สามารถสลับระหว่างโมเดล Claude, GPT หรือโมเดลท้องถิ่นได้ผ่านopenclaw.json ตัวจัดเส้นทาง
- พื้นที่และช่องทาง: คือจุดที่ตัวแทนโต้ตอบกับผู้ใช้ (UI บนเว็บ คอมมานด์ไลน์ หรือมือถือ)
ตั้งค่า: openclaw.json
{
"network_identity": "agent-01-alpha",
"model_routing": {
"primary": "anthropic/claude-3-opus",
"fallback": "local/llama-3-8b"
},
"env_injection": {
"secure_pass": true,
"policy": "prevent_leakage"
}
}
พิมพ์คำสั่ง...
คำถามข้อที่ 1
ทำไม OpenClaw จึงให้ความสำคัญกับปรัชญาแบบเน้นไฟล์ Markdown?
คำถามข้อที่ 2
ส่วนประกอบใดที่รับผิดชอบในการป้องกันความเสียหายของสถานะระหว่างงานหลายตัวแทน?
โจทย์: การละเมิดความปลอดภัย
ลดความเสี่ยงจากการโจมตีแบบ RCE บนช่องทางสาธารณะ
สถานการณ์:คุณกำลังวางตัวแทนลงในช่อง Discord ที่เปิดเผยต่อสาธารณะ คุณสังเกตเห็นว่าตัวแทนพยายามรันคำสั่งชัลล์ที่ไม่ได้รับการยืนยัน ซึ่งก่อให้เกิดความเสี่ยงด้านRCE (การดำเนินการโค้ดจากระยะไกล) ความเสี่ยง
ปลอดภัย
คุณจะใช้เกตเวย์และไฟล์ SKILL.md อย่างไรเพื่อเสริมความปลอดภัยให้โครงสร้างพื้นฐาน?
คำตอบ:
1. ระดับเกตเวย์: จำกัดพอร์ต API ของ WebSocket (18789) ให้รองรับเฉพาะการจราจรภายในเครือข่าย หรือตั้งรหัสผ่านตรวจสอบสิทธิ์ที่เข้มงวด
2. ระดับไฟล์ SKILL.md: กำหนดสิทธิ์การเข้าถึงอย่างเข้มงวดในข้อมูลเมตาดาต้า YAML ของชั้นเครื่องมือ
3. ระดับคำสั่ง:อัปเดตโหมดกรองหกชั้น ในไฟล์ทักษะ เพื่อปฏิเสธคำสั่งที่มีตัวดำเนินการชัลล์ที่ละเอียดอ่อนทุกกรณี
1. ระดับเกตเวย์: จำกัดพอร์ต API ของ WebSocket (18789) ให้รองรับเฉพาะการจราจรภายในเครือข่าย หรือตั้งรหัสผ่านตรวจสอบสิทธิ์ที่เข้มงวด
2. ระดับไฟล์ SKILL.md: กำหนดสิทธิ์การเข้าถึงอย่างเข้มงวดในข้อมูลเมตาดาต้า YAML ของชั้นเครื่องมือ
3. ระดับคำสั่ง:อัปเดตโหมดกรองหกชั้น ในไฟล์ทักษะ เพื่อปฏิเสธคำสั่งที่มีตัวดำเนินการชัลล์ที่ละเอียดอ่อนทุกกรณี